1. Field of the Invention
The present invention generally relates to a transforming process for transforming a format of image data, and in particular, a method for reversibly transforming data format, an image processing apparatus, a program for reversibly transforming data format, and a computer-readable recording medium thereof, in which a color space transforming process is conducted in a system where a lossless/lossy compression/extraction is conducted with respect to the image data in a color space.
2. Description of the Related Art
A color space is one of areas in a vector space that is a three dimensions or higher dimensions. For example, a color coordinate system is defined by three dimensional vectors being three linear independences as bases. In the color coordinated that is generally used, each of R (Red), G (Green), and B (Black) are defined by a central wavelength. When a certain three dimensional color coordinate system is given, any three dimensional linear color coordinate other than the certain three dimensional color coordinate can be expressed by a reversible 3×3 matrix (non-singular).
In practice, various color coordinates (color spaces) are defined by various reasons. For example, in a case of displaying data at a monitor, a RGB coordinate system is used in almost all digital color images. For example, a fixed range being 8 bits/coordinate is preferable. In a case of a compression requiring a color noncorrelativity, the RGB coordinate system is not suitable but another color coordinate system such as a YIQ coordinate system is more suitable. Also, a YUV coordinate system and a YCrCb coordinate system are suitable. Regarding a separation between a brightness and a chrominance relating to a luminosity, these opponent color coordinates systems attempt to improve a separation of a characteristic and an appearance of a change of the chrominance in the same brightness.
In addition, in image for a print, a subtractive color system such as a CMY (Cyan, Magenta, and Yellow) is used. Alternatively, a perfect four dimensional space such as a CMYK (Cyan, Magenta, Yellow, and Black) is used.
The data compression is extremely useful to store and transmit a large amount of data. For example, a necessary time to transmit image data such as a facsimile transmission of a document can be significantly reduced by compressing the image data and reducing the number of bits necessary to reproduce an image.
Conventionally, there are various data compressing methods. The compressing methods can be classified into two categories: that is, a lossy coding and a lossless coding. In the lossy coding, loss of image data maybe occur. Accordingly, an original image can not be guaranteed to be produced perfectly. An purpose of the lossy compression is to prevent a change caused by reproducing the image data from being unpleasant and conspicuous. In the lossless compression, all the image data are stored and compressed in a state in that the image data can be perfectly reproduced.
In the lossless compression, an input symbol or brightness data are converted into an output code word. As input data, image data, voice data, one dimensional data (for example, data changing temporally), two dimensional data (for example, data changing to two space axis directions), and multi-dimensional/multi-spectrum data are used. When data are successfully compressed, the code words of the compressed data are expressed by the number of hits fewer than the number of bits of the input symbol (or the brightness data). As the lossless coding method, a dictionary coding method (for example, Lempel-Ziv coding method), a run length coding method, an arithmetic coding method, and an entropy coding method are used. In a case of the lossless image compression, the basic of the compression is a prediction, a context, and a coding. A JBIG standard for a facsimile compression and a DPCM (Difference Pulse Coding Modulation that is an option of a JPEG standard) for a continuous-tone image are examples of the lossless compression for the image. In the lossy compression, the input symbol and the brightness data are converted into output code words after quantized. Purposes of the quantization is to store characteristic data being important portions of data and also to eliminate unimportant data. In the lossy compression, a conversion for an energy concentration is utilized before the quantization. A base line JPEG is one example of the lossy coding method for the image data.
Conventionally, a color coordinate transformation has been utilized for the lossless compression with the quantization. In the lossless compressing system or the lossless/lossy compressing system, a main essential requirement is reversibility and effectiveness of a transformation. In other lossless/lossy compressing systems, a non-correlation of colors is one factor other than the effectiveness of a reversible transformation. For example, the 3×3 matrix is used for the lossy compression only. Because factors are not integers, when the non-correlation is required, errors are involved in a process while data is alternately compressed and extended.
When the color space is transformed, a calculation accuracy becomes a problem. For example, when 8 bits are input, 10 or 11 bits are required to transform the color space. Higher accuracy is required for an internal calculation, so that a stable color space can be obtained. Errors are accumulated in a result after an image is converted and compressed from the RGB color space and then extended to restore the image in the RGB color space even if a sufficient accuracy is applied to processes being repeated. Accordingly, a final color does not match the same as an original color. This is called color shift that occurs since the color space is unstable.
Methods are provided to realize a reversible color space transformation by an integer operation having predictable accuracy (for example, refer to IDS or Cross-References 1 and 2).
A color converting method for converting into a full color image at higher speed and lower cost after the image is compressed in a JPEG format is disclosed (for example, refer to IDS or Cross-Reference 3). In this color converting method, the input color image is separated into a brightness element and a chrominance element, a color conversion number is obtained by using the chrominance element in which the brightness element is input and an output color space value output, a color conversion is conducted by applying the brightness element to a color converting function, and then an input color in a given color space is converted into an output color in another color space.
The IDS or Cross-References 1 and 2 discloses the reversible color conversion by the integer operation, in the reversible color conversion, an error is not accumulated even if a conversion and a reversed conversion are repeated, and then the color conversion is reversibly conducted at a predictable accuracy. Therefore, it is just a simple data conversion.
Moreover, in a case of IDS or Cross-References 3, the color converting process can be conducted at high speed, and an operation amount and cost can be reduced in the color converting process. Accordingly, a conversion accuracy can not be improved.
That is, in JPEG and JPEG 2000, as describe above, an image subject to be compressed is processed by YCbCr (Y:brightness, Cb:Black color difference, Cr:Red color difference) data. In addition, in generally, the image display and a print developing process are processed by RGB and YMC (or YMCK). Accordingly, compatibility for both RGB and YMC can be problem. In particular, in JPEG 2000, when the electronic watermark for preventing form manipulaton and the electronic watermark for encryption are embodied, it is required to loss any data even if the conversion and the reversible conversion are conducted, and maintain the compatibility of image data conversion. In particular, in JPEG 2000 where lessless compression and extension are available, RGB and YCbCr color conversion is a not-reversible conversion. It is retired for a basic color conversion disclosed in IDS or Cross-References 1 and 2 to guarantee the image quality.
In addition, not only the conversion for the color space, a problem concerning a length conversion of the image data can be raised. For example, in general, data in a personal computer is process in a mm unit system but data in a printer is processed in a inch unit system. Accordingly, if the reversibility in the conversion and the reversed conversion is displaced, a page location may be displaced.
[IDS or Cross-Reference 1]
Japanese Laid-Open Patent Application No. 9-6952
[IDS or Cross-Reference 2]
Japanese Laid-Open Patent Application No. 11-219428
[IDS or Cross-Reference 3]
Japanese Laid-Open Patent Application No. 2000-175061